<?php
/**
 * 单例模式
 */
class Single
{
    //私有的静态属性
    private static $_instance;
    
    /**
     * 私有的构造方法
     */
    private function __construct(array $config)
    {
        // todo
    }
    
    /**
     * 私有的克隆方法
     */
    private function __clone()
    {
        // TODO: Implement __clone() method.
    }
    
    /**
     * 共有的对外接口
     */
    public static function getInstance(array $config)
    {
        if (!(self::$_instance instanceof self))
        {
            self::$_instance = new self($config);
        }
        
        return self::$_instance;
    }
}

$config = array(1,2);
$single = Single::getInstance($config);
var_dump($single);